<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
asdasdsad


<div id="demo">

</div>
<script>

    // var arr = ['asd','asd','asd','asd','asd','asd','asd','asd','asd',];
    //
    //
    // var len = arr.length;
    //
    //
    // for (let i = 0; i < len; i++) {
    //     $('#demo').append('<div>'+arr[i]+'</div>')
    // }
    //
    // var string = '';
    // for (let i = 0; i < len; i++) {
    //     string += '<div>'+arr[i]+'</div>';
    // }
    // $('#demo').html(string);


    // ==========合并两个对象
    // 对象一有a属性,对象二有b属性, 合并后的对象应该有a，b两个属性
    // 思路：
    // 1.先声明连个对象变量
    // 2.声明一个空对象，好合并连个对象
    // 3.循环第一个对象变量，然后把对应的属性合属性值添加到 后面声明的空对象，
    // 4.循环第二个对象变量，然后把对应的属性合属性值添加到 后面声明的空对象，
    // =========技术点(不明白的再去看看)：
    // 1.循环对象
    // 1.循环的变量分别代表什么
    // 2.取对象属性值
    // 3.在循环里面怎么取对象的属性 和 属性值
    // 4.给对象赋值
    // 5.属性是一个变量的时候,给对象赋值
    // ==========早上错误解读：
    // 1.第一张图循环了两个对象，打印出了每次循环的属性和属性值。但是没有把值给列一个对象保存起来，没有达到合并效果，解读：可能不太明白怎么算是合并
    // 2.第二张图，略
    // 3.第三张图，用大括号 { } 括起来了两个循环，据当时你的说法，这是一个合并后的对象，解读：对象理解还不到位，可以再看看对象网上的介绍，我也做不好这个
    // 3.最后一张图，代码正确，但是打印的值不是合并后的对象， 看代码，最后的对象应该直接是 q

    // demo 示例
    // 1.先声明连个对象变量
    var a = {a1:'1',a2:2,a3:3};
    var b = {b1:'1',b2:2,b3:3};
    // 2.声明一个空对象，好合并连个对象
    var c = {};
    //  3.循环第一个对象变量，然后把对应的属性合属性值添加到 后面声明的空对象
    for (var aKey in a) {
        // a[aKey] 表示取出当前循环的值
        c[aKey] = a[aKey]; // 表示取出当前循环的值并赋值给 c 对象的 aKey 属性
        // 第一次循环 aKey = a1, a[aKey] = "1" , 所以 c[aKey] = a[aKey] 表示为 c.a1 = a.a1 ,即 c.a1 = "1";
        // 第二次循环 aKey = a2, a[aKey] = 2 , 所以 c[aKey] = a[aKey] 表示为 c.a2 = a.a2 ,即 c.a2 = "2";
        // 第三次循环 aKey = a3, a[aKey] = 3 , 所以 c[aKey] = a[aKey] 表示为 c.a3 = a.a3 ,即 c.a3 = "3";
    }
    //  3.循环第二个对象变量，然后把对应的属性合属性值添加到 后面声明的空对象
    for (var bKey in b) {
        c[bKey] = b[bKey];
    }
    // 打印， 看看是否是预期样子
    console.log(c)


</script>
</body>
</html>